Embodiments of the present invention generally relate to communications networks, and more specifically to techniques for controlling DNS behavior on a per-request basis.
The Domain Name System or Domain Name Service (DNS) is a system that stores information, such as Internet Protocol (IP) addresses, associated with domain names. Domain names are names that can be assigned to a computer host or groups of computer hosts. Typically, a domain name is made up of alphabetic characters and is easier to remember than a numeric IP address assigned to a computer host. The computer host or groups of computer hosts often provides network services such as web servers, email servers, application servers, and the like, accessible using the domain name.
Whenever an application uses a domain name when requesting network services, a DNS nameserver receives the request and translates the domain name into the corresponding IP address. For example, the domain name “www.cnet.com” might translate to 216.239.115.141. For any group of computer hosts in the DNS system there is likely to be a single master list of domain names and associated IP addresses. The group of computer hosts is called a zone. A zone could be a generic top-level domain (gTLD), such as “com,” or a department within a company or university. Within the zone, DNS service for subsidiary zones may be delegated. The DNS nameserver that maintains the master list for the zone is said to have authority for that zone and is called an authoritative DNS nameserver.
With the ubiquity of the Internet and other Internet Protocol (IP) networks, users, corporations, educational and governmental organizations are constantly seeking ways to take beneficial advantage of opportunities on the Internet. Attempts also have been made to avoid and mitigate negative aspects of these, such as information theft and identify theft, fraud, pornography, and other insensitive and context inappropriate material. Thus, some solutions prevent or block access to such material before the material arrives at a user's computer using the DNS system. However, this can be difficult due to the dynamic nature of the Internet.
Accordingly, what is desired are improved methods and apparatus for solving some of the problems discussed above, while reducing further drawbacks, some of which are discussed above.